package com.starry.module.system.core.sms.service;

import java.util.Random;
import java.util.stream.Collectors;

/**
 * 短信服务
 *
 * @author xiaoke
 */
public interface SmsService {

    /**
     * 发送短信
     *
     * @param phone 手机号
     */
    String send(String phone);

    /**
     * 获取指定长度的随机验证码
     *
     * @param length 验证码长度
     * @return 验证码
     */
    default String getCode(Integer length) {
        String charset = "0123456789";
        Random random = new Random();
        return random.ints(length, 0, charset.length())
                .mapToObj(charset::charAt)
                .map(Object::toString)
                .collect(Collectors.joining());
    }
}
